package com.sp.biz.user.entity;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;

/**
 * <p>
 * 
 * </p>
 *
 * @author 
 * @since 2024-01-26 15:43:18
 */
@Getter
@Setter
@Accessors(chain = true)
@TableName("sys_user")
   @Schema(name= "UserDO对象", description = "")
public class UserDO {

    @TableId(value = "ID", type = IdType.AUTO)
    private Long id;

    @Schema(name="系统id")
    @TableField("SYS_ID")
    private String sysId;

    @Schema(name= "用户账号")
    @TableField("LOGIN_ACCOUNT")
    private String loginAccount;

    @Schema(name="用户名称")
    @TableField("USER_NAME")
    private String userName;

    @Schema(name= "登录密码")
    @TableField("PASSWORD")
    private String password;

       @Schema(name= "用户别名")
    @TableField("USER_ALIAS")
    private String userAlias;

       @Schema(name= "用户性别")
    @TableField("USER_SEX")
    private String userSex;

       @Schema(name= "用户身份证号码")
    @TableField("USER_PID")
    private String userPid;

       @Schema(name="用户政治面貌")
    @TableField("USER_PARTY")
    private String userParty;

       @Schema(name= "民族")
    @TableField("USER_NATION")
    private String userNation;

       @Schema(name= "用户类型")
    @TableField("USER_TYPE")
    private String userType;

       @Schema(name = "用户职级")
    @TableField("USER_LEVEL")
    private String userLevel;

       @Schema(name= "职称")
    @TableField("USER_TITLE")
    private String userTitle;

       @Schema(name = "职位")
    @TableField("USER_POSITION")
    private String userPosition;

       @Schema(name = "用户学历")
    @TableField("USER_EDU")
    private String userEdu;

       @Schema(name = "电子邮箱")
    @TableField("USER_EMAIL")
    private String userEmail;

       @Schema(name = "用户办公电话")
    @TableField("OFFICE_PHONE")
    private String officePhone;

       @Schema(name = "用户移动电话")
    @TableField("MOBILE_PHONE")
    private String mobilePhone;

       @Schema(name= "机构/部门id")
    @TableField("ORG_ID")
    private String orgId;

       @Schema(name = "最后一次登录ip")
    @TableField("LAST_LOGIN_IP")
    private String lastLoginIp;

       @Schema(name = "最后登录时间")
    @TableField("LAST_LOGIN_TIME")
    private LocalDateTime lastLoginTime;

    @TableField("LOGIN_COUNT")
    private Integer loginCount;

       @Schema(name = "用户头像")
    @TableField("USER_PHOTO")
    private String userPhoto;

       @Schema(name= "用户出生日期")
    @TableField("USER_BIRTHDAY")
    private LocalDate userBirthday;

       @Schema(name = "微信openid")
    @TableField("OPENID")
    private String openid;

       @Schema(name= "创建人")
    @TableField(value = "CREATOR_ID", fill = FieldFill.INSERT)
    private Long creatorId;

       @Schema(name = "创建时间")
    @TableField(value = "CREATE_TIME", fill = FieldFill.INSERT)
    private LocalDateTime createTime;

       @Schema(name= "修改人")
    @TableField(value = "UPDATER_ID", fill = FieldFill.INSERT_UPDATE)
    private Long updaterId;

       @Schema(name = "修改时间")
    @TableField(value = "UPDATE_TIME", fill = FieldFill.INSERT_UPDATE)
    private LocalDateTime updateTime;

       @Schema(name = "备注")
    @TableField("REMARK")
    private String remark;

       @Schema(name = "系统默认：1、是，0、否")
    @TableField("ROW_DEFAULT")
    private String rowDefault;

       @Schema(name= "有效状态：1、是，0、否")
    @TableField("ROW_VALID")
    private String rowValid;

    @TableField("EXT1")
    private String ext1;

    @TableField("EXT2")
    private String ext2;

    @TableField("EXT3")
    private String ext3;

       @Schema(name= "数据版本乐观锁的实现")
    @TableField("ROW_VERSION")
    private BigDecimal rowVersion;

       @Schema(name= "是否删除 0 否1是")
    @TableField("IS_DELETE")
    private String isDelete;


}
